#ifndef __IMESH_BUFFER_H__
#define __IMESH_BUFFER_H__

#include <string>
#include "MeshDefs.h"

namespace steam
{
	namespace coal
	{
		class IMeshBuffer
		{
		public:
				
			// virtual destructor
			virtual ~IMeshBuffer() {}
			
			// get face count
			virtual unsigned int getFaceCount() const = 0;
			
			// get face start iterator
			virtual ConstFaceIterator getFaceStartIter() const = 0;
			
			// get face end iterator
			virtual ConstFaceIterator getFaceEndIter() const = 0;
			
			// get object name
			virtual std::string getMeshBufferName() const = 0;

			// get material name
			virtual std::string getMaterialName() const = 0;

		};
	}
}

#endif